# @Time    :2025/4/8 23:17
def bubble_sort(arr):
    """
    冒泡排序
    """
    n = len(arr)
    # 遍历整个列表 ， 外层 ，控制 的是走几次
    for i in range(n - 1):
        count = 0  # 计数
        # 内层， 从头走到尾，遍历列表中的每一个元素 ，
        for j in range(0, n - i - 1):
            # 比较相邻两个元素的大小
            if arr[j] > arr[j + 1]:
                arr[j], arr[j + 1] = arr[j + 1], arr[j]
                count += 1
        if 0 == count:
            break
    return arr


if __name__ == "__main__":
    arr = [64, 34, 25, 12, 22, 11, 12, 90]
    print("排序前:", arr)
    sorted_arr = bubble_sort(arr)
    print("排序后:", sorted_arr)
